#include <iostream>

using namespace std;

int potega(int, int, int);

int main()
{
	int x=0;
	int n=0;
	int w=0;
	int k=1;
	//int wynik=0;

	cout << "\nPodaj podstawe x:" <<endl;
	cin >> x;
	cout << "\nPodaj wykladnik n:" << endl;
	cin >> n;
	
	w=x;

	cout <<"\nWynik: " << potega(n, w,k) << endl;

	return 0;
}


int potega (int n, int w, int k)
{
	
	if(n==0)
		w=1;
	else if(n==1)
		w=w*k;
	else if(n%2==0)
	{
		cout<<"parzysta" << endl;
		w=w*w;
		n=n/2;
		//k=k;
		w=potega(n,w,k);
	}
	else
	{ 
		cout << "nieparzysta" << endl;
		k=k*w;
		w=w*w;
		n=(n-1)/2;
		w=potega(n,w,k);
	}
	cout << "n= "  << n << " k=" << k << " w= " << w <<endl;
	return w;
}	
